Quality of service monitoring device and method of monitoring quality of service

ABSTRACT

The invention provides a quality of service monitoring device ( 12 ) for use with a user equipment comprising a base platform ( 14 ); and an external communication module ( 24 ) adapted to receive from an external source one or more listener modules and/or detector modules for incorporation into the base platform ( 14 ). The base platform ( 14 ) is coupled to the external communication module ( 24 ) to receive one or more listener modules ( 20 ) and detector modules ( 22 ) and is adapted to install received modules to extend the functionality of the base platform ( 14 ) so as to perform the functionality of the installed modules. A corresponding method is provided. There is also provided a quality of service monitoring apparatus, for use on the network side, as well as a corresponding method.

TECHNICAL FIELD

The invention relates to a quality of service monitoring device and amethod of monitoring quality of service. The invention may particularlyrelate to monitoring quality of service in a communication systemenvironment.

BACKGROUND

In the current communication system environment a huge variety ofdevices on which to receive communication services are available tousers. However, the devices differ greatly, including equipment such aslaptops, netbooks, PCs, smart phones, Set-Top-Boxes (STBs), homegateways, gaming consoles, tablet devices, eReaders, digital photoframes, amongst many others.

Moreover, in the current communication system environment there is agreat number of services available to users, and additionally a numberof technical options to receive the same service as similar services areoffered using a variety of different technologies.

As an example, even simple services such as the email service might bedelivered using the Post Office Protocol (POP) or Internet MessageApplication Protocol (IMAP) together with Simple Mail Transfer Protocol(SMTP). However, after the success of the World Wide Web, email serviceis also delivered widely as a web-based solution using HypertextTransfer Protocol (HTTP).

Another example of a service that may be offered using a variety ofdifferent technologies is Internet Protocol Television (IPTV). An IPTVservice may be realized either based on a IP Multimedia Subsystem (IMS)solution or may be realised in a non-IP Multimedia Subsystem basedsolution. It may implemented on top of different technologies which makeuse of a combination of various protocols.

Moreover, in the digital TV domain, Hybrid IPTV is emerging and thereare Set Top Boxes (STBs) which support both traditional IPTV and WebTVusing access to Internet.

The operators who provide communication services and high-level end-userservices are interested in monitoring the Quality of Service (QoS) thatthe end-user is receiving. The operator can gauge the service deliveryquality level based on the result of this monitoring.

However, it is a daunting task for operators to come up with quality ofservice monitoring solutions in the light of the array of devices andservices available in the current communication system environment.

The quality of service monitoring solutions are generally directed tomonitoring the quality of service provided by a particular service, andthey are generally based on network probes that give information aboutthe traffic at different points in the network.

The present invention seeks to obviate at least some of thedisadvantages of the prior art and to provide a method of monitoringquality of service and a quality of service monitoring system.

SUMMARY

In accordance with one aspect of the invention there is provided aquality of service monitoring device for use with user equipment. TheQoS monitoring device comprises a base platform and an externalcommunication module adapted to receive from an external source one ormore listener modules and/or detector modules for incorporation into thebase platform. The base platform is coupled to the externalcommunication module to receive one or more listener modules and/ordetector modules and is adapted to install thereon the received modulesto extend the functionality of the base platform so as to perform thefunctionality of the installed modules.

In accordance with a second aspect of the invention there is provided amethod of monitoring quality of service in a QoS monitoring device foruse with user equipment. The monitoring device comprises a base platformand an external communication module coupled to the base platform. Themethod comprising the base platform receiving from the externalcommunication module one or more listener modules and/or detectormodules and installing the received modules to extend the functionalityof the base platform so as to perform the functionality of the installedmodules.

In accordance with a third aspect of the invention there is provided aquality of service monitoring apparatus comprising a store arranged forstoring one or more listener modules for obtaining service quality datafrom traffic data relating to a monitored service passing through anetwork element and a store arranged for storing one or more detectormodules. The detector modules using service quality data obtained by alistener module to form QoS reports. The QoS monitoring apparatusfurther comprises a QoS monitoring server adapted to send a listenermodule and/or a detector module to at least one remote QoS monitoringdevice for installation in a base platform of the at least one remoteQoS monitoring device, to extend the functionality of the base platformso as to perform the functionality of the installed modules.

In accordance with a fourth aspect of the invention there is provided amethod of monitoring quality of service in a QoS monitoring apparatus.The method comprises the steps of selecting from a store one or more ofa listener module for obtaining relevant traffic data passing through anetwork element and/or selecting from a store one or more of a detectormodule to identify service quality problems using the data obtained by alistener module. The method also comprises sending the selected listenermodule and/or the detector module to at least one remote QoS monitoringdevice for installation in a base platform of the at least one remoteQoS monitoring device to extend the functionality of the base platformso as to perform the functionality of the installed modules.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an outline of the main components of an exemplaryembodiment of a QoS monitoring device;

FIG. 2 illustrates a first step in a method of installing modules in theQoS monitoring device;

FIG. 3 illustrates a second step in a method of installing modules inthe QoS monitoring device;

FIG. 4 illustrates a third step in a method of installing modules in theQoS monitoring device;

FIG. 5 illustrates a method of provisioning the monitoring system shownin FIGS. 1-4 with modules;

FIG. 6 illustrates the role of the shared data structure in theexemplary embodiment;

FIG. 7 shows a scoreboard/commentary client application in accordancewith one arrangement;

FIG. 8 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring apparatus;

FIG. 9 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring device associated with a network element,during an initialisation phase;

FIG. 10 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring device associated with a network element,during monitoring of a service.

DETAILED DESCRIPTION

The invention will now be described with reference to embodiments shownin the accompanying drawings.

Embodiments of the invention provide a quality of service (QoS)monitoring solution for user equipment as well as for a network elementthat can be adapted easily to cover additional technologies or services.

FIG. 1 shows an outline of the main components of an exemplaryembodiment of the invention. Although embodiments may be used to monitorquality of service in any network element or device, as will be apparentto a skilled person, the exemplary embodiment is implemented in an edgedevice of the network, such as user equipment 2. The user equipment 2 isprovided with hardware devices 4, an operating system OS 6 and at leastone application 8, which, when operated together, provide one or moreservices to a user of the user equipment 2.

Some of the hardware devices 4 are network hardware devices 10,responsible for handing external communications, for example withcommunications networks. Typical network hardware devices areexemplified by, but not limited to, WiFi hardware, an Ethernet card or a3G dongle.

The user equipment 2 is also provided with a Quality of Servicemonitoring device 12 in accordance with one embodiment of the invention.The user equipment 2 itself does not form part of the invention and as aresult the elements 4-10 of the user equipment 2 described above aredenoted by dashed lines.

In the exemplary embodiment the QoS monitoring device 12 comprises:

-   -   a base platform 14 which controls and coordinates the internal        actions, internal communication and external communication of        the QoS monitoring device 12;    -   a storage module 16 used during a monitoring operation;    -   a user interface 18, which enables the QoS monitoring device 12        to communicate with the user of the user equipment 2;    -   at least one listener module 20, which extends the functionality        of the QoS monitoring device 12 when installed on top of the        base platform 14;    -   at least one detector module 22, which extends the functionality        of the QoS monitoring device 12 when installed on top of the        base platform 14; and    -   an external communication module 24.

In one embodiment the functions of one listener module and one detectormodule are implemented in a single module.

The functions of these elements and the inter-relationship between theseelements will be explained in more detail in the following description.

In the exemplary embodiment, the base platform 14 is implemented as asoftware module within the operating system (OS) 6 of user equipment 2.In the exemplary embodiment the base platform 14 together with othercomponents provide a daemon service on the user equipment 2. In thisspecification the term “daemon” service is intended to refer to aservice provided by a computer program that performs a particular taskin the background rather than under the direct control of the user. Thusthe base platform 14 monitors the quality of service, QoS, provided by aparticular service running in the host equipment, in this case in theuser equipment 2.

The base platform 14 controls the operation of the QoS monitoring device12 and has access to a storage module 16 used by the monitoring device12 during monitoring operation. In some embodiments the storage module16 may comprise both volatile memory and non-volatile memory. Volatilememory (random access memory RAM) may be used as a shared data structureto enable communication between listener module 20 and detector module22. Non-volatile memory used to store necessary information in thepersistence memory. The volatile memory and the non-volatile memoryspace is allocated by the operating system 6 and the allocated memory isaddressable by the QoS monitoring device 12.

The storage module 16 hosts a shared data structure that is used by theQoS monitoring device 12 during monitoring operation. The shared datastructure will be explained in more detail with reference to FIG. 6.

In the exemplary embodiment the QoS monitoring device 12 is alsoprovided with a user interface 18, which enables the base platform 14 tocommunicate with the user of the user equipment 2, as will be explainedin more detail in the following description.

In use of the exemplary QoS monitoring device 12, the monitoring device12 is also provided with at least one listener module 20. Each listenermodule 20 is coupled to the operating system OS 6 and/or networkhardware 4 and/or device driver of the network hardware to listenpassively to network traffic passing through the operating system OS 6and network hardware 4. Each listener module 20 present in themonitoring device is matched to and adapted to monitor the type of userequipment 2 and the operating system 6 used in the user equipment 2and/or to the network hardware devices 10 (e.g. 3G dongle, Ethernetinterface, WiFi interface etc) to be monitored.

In some embodiments a listener module 20 may also communicate with thenetwork hardware devices 10 of the user equipment to obtain variousdetails (e.g., signal strength in 3G). As opposed to passive listeningto passing traffic data, in this case information from the networkhardware device is actively taken for QoS monitoring and correlatingpurposes where this is feasible and applicable. Such network devicespecific functionalities may be embedded in a network hardware specificlistener module 20.

The exemplary embodiment of the QoS monitoring device 12 shown in FIG. 1is provided with five listener modules 20 a-20 e each arranged tomonitor traffic data communications in the user equipment 2 using adifferent communications technology. In the exemplary embodiment themonitoring device 12 is provided with:

-   -   a WiFi listener module 20 a;    -   an Ethernet listener module 20 b    -   a point to Point Protocol (PPP) listener module 20 c    -   a USB listener module 20 d; and    -   a Bluetooth listener module 20 e.

In the exemplary embodiment of the user equipment shown in FIG. 1, enduser traffic 26 relating to a service being provided to an end user isshown passing through the WiFi listener module 20 a when being exchangedbetween a service application, for example a service application 8 a andthe WiFi system hardware (not shown explicitly).

The exemplary monitoring device 12 is also provided with at least onedetector module 22. Each detector module 22 is provided to monitorquality of service (QoS) for a particular service and includes all theanalysis rule sets, patterns and heuristics relating to a given service.A detector module 22 uses the information gathered by a listener module20 during a specific time period and the analysis rule sets, patternsand heuristics related to the given service to identify patterns thatrelate to specific QoS issues of that service, as will be explained inmore detail below.

In some embodiments, the detector module 22 can identify quality ofservice problems such as access problems or content download speed inhigher level services such as WebTV/YouTube. In some embodiments thedetector modules can identify quality of service problems such asfrequent disconnections in lower level network services such as mobilebroadband network services.

The exemplary embodiment of the QoS monitoring device 12 shown in FIG. 1is provided with three detector modules 22 a-22 c each arranged tomonitor the QoS for a service.

The exemplary monitoring device 12 is also provided with an externalcommunication module 24 which is arranged to communicate with anexternal Quality of Service (QoS) monitoring server (not shown inFIG. 1) under the control of the base platform 14, as will be explainedin more detail in the following description. The external communicationmodule 24 of the exemplary embodiment receives from the external Qualityof Service (QoS) monitoring service at least re-configuration messages27 and sends to the external Quality of Service (QoS) monitoring serviceat least QoS reports 28, as will become clear from a consideration ofthe following description.

In the exemplary embodiment the listener modules 20 and the detectormodules 22 are both formed as a plug-in for the base platform 14. Inthis specification the term “plug-in” is intended to refer to a softwarecomponent that adds specific capabilities to a larger softwareapplication, enabling customisation of the functionality of the largersoftware application. In this way, the use of listener module plug-in 20and a detector module plug-in 22 extends the operation of the baseplatform 14 during operation of the exemplary embodiment.

In the exemplary embodiment, a listener module 20 appropriate totechnology used by the user equipment 2 and a detector module 22appropriate to services being provided to the user via the userequipment 2 are provided to the monitoring device 12 from an externalQoS monitoring service (not shown in FIG. 1).

Thus, when a new hardware or technical capability is added to the userequipment 2, a corresponding listener module 20 may be added to the QoSmonitoring device 12 to monitor the new network interface. When a newservice is to be provided to a user by the user equipment 2, acorresponding detector module 22 may be added to the monitoring device12 to monitor the QoS of the new service.

In this way, it will be clear to a skilled person that a flexible systemis provided which can be generally adopted and which is adaptable to thespecific and changing requirements of user equipment 2.

In some embodiments the listener modules 20 for different hardwarearrangements and the detector modules 22 for different services aredeveloped centrally and are then applied to the user equipment 2 asnecessary. In some embodiments this may be achieved by download to theuser equipment 2 of listener modules 20 and/or detector modules 22appropriate to that user equipment 2 from a QoS monitoring serviceexternal to the user equipment.

The steps involved in updating the QoS monitoring device 12 with alistener module 20 and/or a detector module 22 in accordance with anexemplary embodiment will now be explained with reference to FIGS. 2-4.

In FIGS. 2-4, user equipment 2 having a QoS monitoring device 12 asshown in FIG. 1 is provided. The same reference numbers have been usedin FIGS. 2-4 for elements that are the same as or similar tocorresponding elements in FIG. 1. In an initial stage as shown in FIG.2, the monitoring device 12 of the user equipment 2 is provided with abase platform 14, but there are no listener modules 20 or detectormodules 22 shown.

In FIGS. 2-4 a QoS monitoring service or system 100 having a QoSmonitoring apparatus 30 and at least one QoS monitoring device 12 isshown. Elements of the user equipment 2 useful for explaining theoperation of the embodiment are shown using dashed lines. In addition,the user interface 18 of the QoS monitoring device 12 may be omitted insome embodiments, and is therefore shown in dashed lines in FIG. 2.

The QoS monitoring apparatus 30 is provided with a QoS monitoring server32; a module store 34; and a report store 36 associated therewith. Insome embodiments the module store 34 and the report store 36 may beimplemented using a database.

The module store 34 is arranged to store a plurality of listener modules20 and/or detector modules 22, together with reconfigurationinstructions/details and any meta-data or other information associatedwith the respective listener module or detector module (not shownseparately). In the exemplary embodiment the listener modules 20 and thedetector modules 22 and respective associated data are stored in thesame module store 34, but other embodiments may be envisaged in whichthe listener modules 20 and the detector modules 22 are stored inseparate module stores.

It is envisaged in the exemplary embodiment that the externalcommunication module 24 of the QoS monitoring device 12 is able tocommunicate with the QoS monitoring server 32 via for example acommunication network (not shown). The user equipment 2 may be coupledto a number of different networks using a number of differenttechnologies, as will be apparent to a skilled person. Examples of thisinclude but are not limited to a local area network (LAN) or a mobilecommunications system such as a network standardised by the 3^(rd)Generation Partnership Project (3GPP), or a WiFi network.

In a first stage, shown with reference to FIG. 2, listener modules 20and/or detector modules 22 are prepared and are stored in the modulestore 34 of the QoS monitoring apparatus 30.

Thus, with reference to FIG. 2, typically, when a new technology or anew service is introduced or implemented in a network it is envisagedthat a listener module 20 or a detector module 22 will be developed forthe new technology or the new service respectively by a module developer40. Generally, a range of modules that are suitable for the range ofuser equipment within the communication network in which the modules areto be implemented will be developed.

Each module created by the module developer 40, together withreconfiguration instructions for the base platform 14 and any meta-dataor other information associated with the respective module, is stored inthe module store 34 of the QoS monitoring apparatus 30 as shown byinteraction A of FIG. 2.

In a second stage, shown with reference to FIG. 3, modules specific to auser equipment are transferred from the module store 34 of the QoSmonitoring apparatus 30 and installed in the monitoring device 12 readyfor monitoring to begin.

The external QoS monitoring server 32 maintains a knowledge base aboutthe type of plug-in module that should be used for a particular userequipment depending for example on the operating system OS, networkhardware and type of the computing device of the user equipment. Thisknowledge-base is built and maintained by a network operator eitherusing human experts or using other software tools or using a mixture ofthe both.

As necessary, in the exemplary embodiment the QoS monitoring server 32“pushes” the appropriate listener module 20 and/or detector module 22,together with respective necessary configuration details, towards theuser equipment 2 and the base platform 14 of the QoS monitoring device12 installs the modules with the user's consent in the exemplaryembodiment.

Thus, with reference to FIG. 3, in interaction B a listener module 20and/or a detector module 22, together with reconfigurationinstructions/details and any meta-data or other information associatedwith the respective listener module or detector module, appropriate tothe user equipment 2 can be sent to or downloaded to the QoS monitoringdevice 12, for example via a communications system to which the userequipment 2 has access. As will be apparent, in different embodimentsthis transfer may be initiated by the QoS monitoring server 32 or by theQoS monitoring device 12 of user equipment 2.

This transfer may be done remotely with minimal human intervention in aprocess similar to MS Windows updates. The necessary security mechanismsmay also be handled by the base platform 14. These security measures arewell studied in other contexts and are familiar to a skilled person andtherefore will not be described in more detail.

In some embodiments permission for change in the QoS monitoring device12 by installation of a listener module 20 or a detector module 22, maybe sought from a user 42 in interaction C. This may be achieved forexample by presenting relevant meta-data associated with the module tothe user 42 via the user interface 18 of the QoS monitoring device 12.Permission for change in the monitoring device 12, for example byinstallation of a listener module 20 or a detector module 22, may begiven by user 42 via the user interface 18 of the monitoring device 12in interaction D.

The base platform 14 then installs the downloaded module and performsthe necessary configuration according to the configuration detailsassociated with the module. Thereafter, the operation of the baseplatform 14 is modified in accordance with the downloaded module. Anexemplary listener module 20 and an exemplary detector module 22 areshown installed in the base platform 14 in FIGS. 3 and 4.

In the exemplary embodiment described with reference to FIG. 3, thepermission of the user 42 is required before allowing the modificationof the operation of the QoS monitoring device 12 caused by installationof a listener module 20 in the base platform 14 or installation of adetector module 22 in the base platform 14. However, in some embodimentsa listener module 20 and/or a detector module 22 may be installedautomatically, without requiring the user 42 to give permission. Inthese embodiments, a user interface 18 may not be required.

Finally, in a monitoring stage, the base platform 14 with the relevantinstalled listener module 20 and detector module 22 monitors the qualityof service of an operating service. In the exemplary embodiment qualityreports are sent to the external QoS monitoring server 32 of the QoSmonitoring apparatus 30. Again, in some embodiments the user interface(18) can be used to obtain permission from the user for sending out thequality reports.

The interactions between system components during quality of servicemonitoring will be discussed in more detail with reference to FIG. 4.

When a service is being used, a service application (not shown) in theuser equipment 2 communicates end user service traffic with thirdparties, for example a video messaging server (not shown), via acommunications system. This interaction is shown as interaction E inFIG. 4 (corresponding to end user traffic 26 in FIG. 1). During theoperation of the service, the QoS properties of the service can bemonitored by the monitoring device 12 of the user equipment 2 and anyQoS problems identified. In the exemplary embodiment QoS reportsrelating to the service provided by the user equipment can be sent tothe external QoS monitoring server 32. This interaction is shown asinteraction F in FIG. 4 (corresponding to QoS reports 28 in FIG. 1).

A protocol is required to forward the QoS reports from the monitoringdevice 12 to the QoS monitoring server 32. The protocol might specifythe transport mechanism, for example whether to use HTTP or plain socketcommunication, and the timing schedule, for example the period orfrequency of each report, whether reports are sent synchronously orasynchronously, and whether the QoS monitoring device 12 pushes the QoSreports to the QoS monitoring server 32 or whether the QoS monitoringserver 32 pulls the QoS reports from the monitoring service 12 of theuser equipment 2. In addition it is also necessary to specify the datastructures that need to be maintained to facilitate the reportforwarding. These implementation details may be determined by a personskilled in the art for different embodiments and may utilize existingprotocols, and therefore will not be discussed in further detail.

As will be explained in more detail in the following description, QoSreports sent by the monitoring device 12 and stored by the QoSmonitoring server 32 in the report store 36 may be accessed by humanexperts or by a QoS evaluation module (not shown) of the external QoSmonitoring apparatus 30 to review the quality of services supplied tothe user 42 of user equipment 2, for example to determine compliancewith a service level agreement (SLA) and/or to alert the network orservice operator of QoS issues.

A method of provisioning the user equipment 2 in the arrangement shownin FIGS. 2-4 with a listener module 20 and a detector module 22 will nowbe described with reference to FIG. 5.

The example relates a scenario where a new network technology, forexample Long Term Evolution (LTE) technology, is introduced and usersstart to use a new application, for example a new Video Messaging (VM)System. In this example the end-user uses a particular device, forexample a Tablet device, which has a LTE dongle enabling use of the newVideo Messaging application on the Tablet device.

In the first phase of the example, a LTE listener module that canmonitor the traffic that flows through the LTE dongle is installed as aplug-in for the base platform 14 of the monitoring device 12. In FIG. 5,the steps that correspond to this phase are shown as steps 60-68.

In the second phase of the example, a VM detector module that cananalyze and detect QoS problems related to the video messagingapplication is installed as a plug-in for the base platform 14 of themonitoring device 12. In FIG. 5, the steps that correspond to this phaseare shown as steps 70-78.

In the third phase of the example, once the user uses the videomessaging application, the VM detector module will analyze and detectQoS problems based on data gathered by the LTE listener module. This VMdetector module, for example, can check whether a video message isdownloaded within an acceptable time period. If not, a QoS problem withthe video messaging application is detected. Any detected problems willbe reported to the external QoS monitoring service 32 as they happen. InFIG. 5, the steps that correspond to this phase are shown as step 80-90.

In a first step in the exemplary method, in response to a new networktechnology, such as the long term evolution (LTE) network technologybeing implemented in the network and/or introduction of new hardware inthe user equipment 2, module developers 40 might develop a number oflistener modules for the new network technology, each suitable for usein a different user equipment, together with associated configurationinformation and meta-data. The developed listener modules withassociated configuration information and meta-data are stored within themodule store 34 of the external QoS monitoring apparatus 30 in step 60.One of the developed listener modules is a LTE listener module 20 for aLTE dongle on a tablet device.

In a second step 62, the listener module and associated configurationinformation and meta-data stored within the module store 34 of the QoSmonitoring apparatus 30 appropriate to the user equipment 2 isdownloaded to the monitoring device 12 of the user equipment 2. In theexemplary embodiment shown with reference to FIG. 1 the LTE listenermodule 22 and the associated configuration information and meta-data isdownloaded to the user equipment 2 via the external communication module24 of the monitoring device 12 under the control of the base platform14.

In the exemplary embodiment, the QoS monitoring apparatus 30 determinesthat the LTE listener module 20 should be downloaded to the userequipment 2 and initiates the download. However, in other embodiments itis also possible that the monitoring device 12 initiates the download ofthe required LTE listener module 20 in response to the addition of newhardware or software to the user equipment 2, or the detection of a newtechnology used by the user equipment 2.

In step 64 the QoS monitoring device 12 requests permission from the enduser 42 to install the LTE listener module 20 in the user equipment 2.Typically the base platform 14 might send an installation requestmessage to the user 42 using the user interface 18. The installationrequest message may contain meta-data or other information associatedwith the LTE listener module 20 received from the module store 34 of theQoS monitoring apparatus 30.

In step 66 an installation permission message from end user 42 isreceived by the base platform 14 via the user interface 18, and the baseplatform 14 can then install the new LTE listener module 20, in step 68.The base platform 14 may use information or meta-data associated withthe new module to install it. As mentioned previously, in the exemplaryembodiment the listener module 20 is arranged as a plug-in to the baseplatform 14, and causes a modification to the operation of the baseplatform 14 so as to enable LTE communications to be monitored.

Next, in step 70, in response to a new service, such as a new videomessaging service becoming available in the network, module developers40 develop a number of detector modules for the new service eachsuitable for use in a particular user equipment using particulartechnologies, together with associated configuration information andmeta-data. The detector modules, with associated configurationinformation and meta-data, are stored within the module store 34 of theQoS monitoring apparatus 30 in step 70. One of the developed modules isa detector module 22 for a video messaging system for an LTE dongle on atablet device.

In a step 72, the detector module 22 and associated configurationinformation and meta-data stored within the module store 34 of the QoSmonitoring apparatus 30 appropriate to the user equipment 2 isdownloaded to the QoS monitoring device 12 of the user equipment 2. Inthe exemplary embodiment shown with reference to FIG. 1 the detectormodule 22 and associated configuration information and meta-data isdownloaded to the monitoring device 12 of the user equipment 2 via theexternal communication module 24 of the user equipment 2 under thecontrol of the base platform 14.

In the exemplary embodiment, the QoS monitoring server 32 determinesthat the detector module 22 should be downloaded to the user equipment2, and initiates the download of the detector module 22. However, inother embodiments it is also possible that the QoS monitoring device 12initiates the download of the required detector module 22, for examplein response to the implementation of the new service on the userequipment 2.

In step 74 the monitoring device 12 requests permission from the enduser 42 to install the detector module 22 in the user equipment 2.Typically the base platform 14 might send an installation requestmessage to the user 42 using the user interface 18. The installationrequest message may contain meta-data or other information associatedwith the detector module 22 received from the module store 34 of the QoSmonitoring apparatus 30.

In step 76 an installation permission message from end user 42 isreceived by the base platform 14 via the user interface 18, and the baseplatform 14 can then install the new detector module 22 in step 78. Thebase platform 14 may use information or meta-data associated with thenew module to install it. As mentioned previously, in the exemplaryembodiment the detector module 22 is arranged as a plug-in to the baseplatform 14, and causes a modification to the operation of the baseplatform so as to evaluate, using information gathered by the LTElistener module 20, the quality of service being provided to the user ofthe video messaging service.

A video messaging session between a video messaging server (not shown inFIGS. 1-3) and a video messaging application 8 of the user equipment isinitiated using the LTE dongle. A video messaging session 80 isinitiated at the video messaging server and a corresponding videomessaging session 82 is initiated at the video messaging application 8of the user equipment 2. During the video messaging session, messages 84are sent from the video messaging server to the video messagingapplication 8, and messages 86 are sent from the video messagingapplication 8 to the video messaging server.

The messages 84 and 86 being exchanged between the video messagingserver and the video messaging application 8 flowing through the LTEdongle of the user equipment are monitored in step 88 by the LTElistener module 20. The video messaging detector module 22 uses datagathered by the LTE listener module 20 to evaluate QoS of the videomessaging service. In this exemplary embodiment, QoS reports 90 are sentperiodically from the video messaging detector module 22 to the QoSmonitoring server 32 of the QoS monitoring apparatus 30, and are storedfor example in report store 36 for further analysis.

The interaction between a listener module 20 and a detector module 22during quality of service monitoring will now be explained in moredetail with reference to FIGS. 6 and 7. Elements corresponding toelements in FIGS. 1-5 have been given the same reference numerals.

The intercommunication and interface between a listener module 20 and adetector module 22 must ensure that information flows between thelistener module 20 and the detector module 22 so that the QoS monitoringdevice 12 functions properly. In the exemplary embodiment the listenermodules 20 and detector modules 22 can communicate using a shared datastructure 102 within the storage module 16 shown in FIG. 6. The shareddata structure 102 is maintained and managed by the base platform 14, asindicated in FIG. 6 by dashed line 104.

During a service monitoring operation in the exemplary embodiment, thelistener module 20 and detector module 22 communicate with each othervia the shared data structure 102 in the storage module 16.

Thus, in the exemplary embodiment the listener module 20 writesimportant and relevant information to the shared data structure 102about the communications taking place through the network interfacebeing monitored by the listener module 20 together with a time stamp andother necessary meta-information such as the name of the listener module20. This action is shown by arrow 108 in FIG. 6.

In some embodiments, the listener module 20 writes to the shared datastructure 102 all the information observed in the communications takingplace through the network interface being monitored by the listenermodule 20. In other embodiments the listener module 22 might write onlya selected set of observed information to the shared data structure 102.In some embodiments this can be achieved by allowing a detector module22 to inform the listener module 22 of the type of information, forexample the patterns of information in which the detector module isinterested. In this case, the listener module 20 will not write all theobserved information to the shared data structure 102 but the listenermodule 20 will write to the shared data structure 102 only theinformation or patterns in which the detector module 22 is interested.

In the exemplary embodiment, the detector module 22 reads out of theshared data structure 102 the information that has been written to theshared data structure 102 by the listener module 20. This action isshown by arrow 108 in FIG. 6. The detector module 22 looks for importantdetails and patterns in the data and generates quality reports to besent to the external QoS monitoring server 32 of the QoS monitoringapparatus 30 as described above.

The details and patterns in the data are defined by the detector moduledeveloper 40 when developing the detector module 22 taking intoconsideration the service protocol being monitored and taking intoconsideration the possible errors that can arise when accessing theservice.

In some embodiments the detector module 22 for a specific serviceanalyses the service specific information, exemplified by but notlimited to protocol handshake, request, responses, but not the networkhardware specific information, exemplified by but not limited tocollisions in Ethernet interface, signal strength of the 3G wirelesssignal. In some embodiments, the listener modules 20 writes networkinterface specific information such as collisions in the Ethernetinterface, 3G signal strength to the shared data structure 102. In theseembodiments, a detector module 22 can use this network interfacespecific information when finding the root causes of service impairmentsby correlating the information.

In the exemplary embodiment the base platform 14 periodically purges the“old” information from shared data structure 102 after waiting asufficient length of time to enable detector modules 22 to read theinformation in the shared data structure 102. As a result, the shareddata structure 102 will remain a finite size and will not growindefinitely.

In some embodiments the base platform 14 might store a “digest” of theinformation in the shared data structure 102 into a persistence memory,for example a hard disk, for analysis when and if necessary for examplewhen attending to a customer complaint. The information stored in thepersistence memory will be purged after a longer time period, forexample after a day.

The operation of an exemplary embodiment relating to a simple web-basedscoreboard and commentary service for games, which may be suitable forexample for games like football, cricket or baseball, will now bedescribed with reference to FIG. 7. A user can use this service tofollow a match and see the latest score of the match as well astext-based commentary.

Thus FIG. 7 shows an end user 42 running a scoreboard/commentary clientapplication 110, for example as one of the application 8 on the userequipment 2 described above. A scoreboard/commentary server 112 isaccessible via for example a WiFi connection. FIG. 7 shows the sequenceof requests and responses between the scoreboard/commentary clientapplication 110 and the scoreboard/commentary server 112.

During a game the latest score and the commentary are updated at thescoreboard/commentary server 112. In order to retrieve the score andcommentary for display to the user 42 the scoreboard/commentary clientapplication 110 sends a Hypertext Transfer Protocol (HTTP) request 114,requesting the latest score and commentary, to the scoreboard/commentaryserver 112 via for example the WiFi connection. In response, thescoreboard/commentary server 112 sends an HTTP reply 116 containing thescore and commentary back to the scoreboard/commentary clientapplication 110 via the WiFi connection.

This request and response cycle is repeated periodically in order tokeep the score and commentary information presented to the user 42 bythe scoreboard/commentary client application 110 up to date. In theexemplary embodiment shown in FIG. 7 every 30 seconds, a HTTP GETrequest 114 is sent to the scoreboard/commentary server 112 to fetch newinformation and in response, the scoreboard/commentary server 112 sendsan HTTP reply 116 containing the score and commentary back to thescoreboard/commentary client application 110. Further requests andresponses are shown in FIG. 7, but have not all been separatelynumbered, for clarity.

However, owing to problems exemplified by but not limited to a networkoverload, a server overload, or the connection being dropped orproviding insufficient bandwidth owing to no signal or insufficientsignal strength, it might happen that responses to HTTP requests do notarrive at the scoreboard/commentary client application 110.

The QoS monitoring device 12 of the user equipment 2 monitors theoperation of the service. In the exemplary embodiment, the WiFi listenermodule 20 observes all the traffic that flows through WiFi networkinterface, including the HTTP requests 114 and corresponding HTTPreplies 116. The listener module 20 writes the observed information tothe shared data structure 102. The detector module 22 reads informationfrom shared data structure 102 and observes the attempts to send HTTPrequests 114 and to receive HTTP replies 116 from the information storedin the shared data structure 102 by the listener module 20.

During the time period X in FIG. 7, from the information stored in theshared data structure 102 by the listener module 20, the detector module22 can determine that there were HTTP requests 118, 120, 122 did notreceive a reply. The failure to receive a reply indicates an impairmentto the Scoreboard/Commentary service and so the detector module 22detects service impairments of Scoreboard/Commentary service. A QoSreport can then be sent to the QoS monitoring server 32 of the QoSmonitoring apparatus 30.

In this exemplary embodiment it is clearly seen how the serviceimpairment is detected by a detector module 22 using the informationwritten to the shared data structure (SDS) 102 by the listener module.

FIG. 8 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring apparatus 30.

In a first step 124 one or more of a listener module for obtainingrelevant traffic data passing through a network element is selected froma store.

And/or in a second step 126 one or more of a detector module to identifyservice quality problems using the data obtained by a listener module toform QoS reports is selected from a store.

In a third step 128 the selected listener module 20 and/or detectormodule 22 are sent to a remote QoS monitoring device 12 to extend thefunctionality of the base platform to perform the functionality of theinstalled modules.

FIG. 9 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring device 12 associated with a network element,during an initialisation phase.

In a first step 130 one or more listener modules and/or detector modulesare received. In a second step 132 the received modules are installed toextend functionality of the base module.

FIG. 10 is a flow chart summarizing a method of monitoring quality ofservice in a QoS monitoring device 12 associated with a network element,during monitoring of a service.

In a first step, 134, traffic data is obtained in accordance with thefunctionality of installed listener module.

In a second step, 136, a QoS report is formed from service quality datain accordance with the functionality of installed detector module.

Therefore it can be seen that embodiments of the present inventionprovide a method and a system that enable easy deployment of a QoSreporting service at the end-user equipment.

In some embodiments, the provision of listener modules and detectormodules enables the task of network monitoring to be separated from thetask of service monitoring. Listener modules overcome the difficulty ofhandling various types of network technologies and network devices. Thedetector modules overcome the problems in monitoring various diversetypes of services. The detector and listener modules need to beimplemented only once, for the given service and for the specific devicerespectively. For example, when a new service appears, the operator withthe help of a human expert can develop necessary QoS analyzing patternsand heuristics for the new service and develop the necessary module forthe new service. A given detector module “bundles” all the analysis rulesets, patterns and heuristics related to a given service.

In some embodiments the listener modules and detector modules for eachuser equipment are independently distributed by a QoS server to theend-user devices. As a result, embodiments enable a service provider tomonitor the quality of its service independently of:

(1) the type of end-user device that is consuming the service;

(2) the type of networking technology used (e.g., Asymetric DigitalSubscriber Line (ADSL), and the 3GPP Long term Evolution (LTE); and

(3) the type of operating system used by the network device, for examplean end user device or Home Gateway (HGW).

In some embodiments the QoS monitoring device may be remotely maintainedin a semi automated way with minimal human intervention.

In embodiments the end-user application, exemplified by but not limitedto a WebTV client, Browser or VoIP client, does not need to be modifiedfor the monitoring device to function. It is a very flexible solutionthat can accommodate new services as well as new technologies bydevelopment and deployment of plug-in modules designed to handlemonitoring and analysing operations relates to these new services andtechnologies.

Moreover, in some embodiments monitoring close to the end-user providesa better view on the user experience.

Modifications and other embodiments of the disclosed invention will cometo mind to one skilled in the art having the benefit of the teachingspresented in the foregoing description and the associated drawings.Therefore it is to be understood that the invention is not to be limitedto specific embodiments disclosed and that modifications and otherembodiments are intended to be included within the scope of thisdisclosure. Although specific terms may be employed herein, they areused in a generic and descriptive sense only and not for the purposes oflimitation.

1. A quality of service, QoS, monitoring device for use with a userequipment comprising: a base platform; and an external communicationmodule adapted to receive from an external source one or more listenermodules and/or detector modules for incorporation into the baseplatform; wherein the base platform is coupled to the externalcommunication module to receive one or more listener modules and/ordetector modules and is adapted to install thereon the received modulesto extend the functionality of the base platform so as to perform thefunctionality of the installed modules.
 2. The QoS monitoring device asclaimed in claim 1 wherein the base platform during monitoring of aservice is adapted to obtain traffic data in accordance with thefunctionality of the installed listener module.
 3. The QoS monitoringdevice as claimed in claim 2 adapted to obtain the traffic data fromnetwork hardware devices in accordance with the functionality of aninstalled listener module specific to the network hardware.
 4. The QoSmonitoring device as claimed in claim 2 wherein during monitoring of aservice the base platform is adapted to extract service quality datafrom the traffic data and use the obtained service quality data to forma QoS report in accordance with the functionality of an installeddetector module.
 5. The QoS monitoring device as claimed in claim 4wherein the service quality data is extracted from the traffic data andused to form the QoS report in accordance with the functionality of aninstalled detector module specific to the service being monitored. 6.The QoS monitoring device as claimed in claim 2 wherein the QoSmonitoring device further comprises a storage module for storing trafficdata from a listener module and/or service quality data from a detectormodule.
 7. The QoS monitoring device as claimed in claim 6 wherein thebase platform is adapted to create and maintain a shared data structurein the storage module for storing service quality data.
 8. The QoSmonitoring device as claimed in claim 4 where the external communicationmodule is adapted to send the QoS report to a QoS monitoring apparatus.9. The QoS monitoring device as claimed in claim 1 wherein configurationinformation and/or meta-data relating to a listener or detector moduleis received together with the module.
 10. The QoS monitoring device asclaimed in claim 1 further comprising a user interface, wherein the baseplatform is adapted to request via the user interface 18 permission toinstall a received module, and installation is not carried out until apositive response is received and/or the base platform is adapted torequest via the user interface permission to send the QoS report to aQoS monitoring apparatus.
 11. The QoS monitoring device as claimed inclaim 10 wherein information received with the module is used togenerate an installation request.
 12. A method of monitoring quality ofservice, QoS, in a quality of service monitoring device for use with auser equipment, the monitoring device comprising a base platform and anexternal communication module coupled to the base platform comprisingthe steps of: wherein the base platform receives from the externalcommunication module one or more listener modules and/or detectormodules; and installs the received modules to extend the functionalityof the base platform so as to perform the functionality of the installedmodules.
 13. The method of monitoring quality of service as claimed inclaim 12 further comprising the step of obtaining traffic data inaccordance with the functionality of an installed listener module duringmonitoring of a service.
 14. The method of monitoring quality of serviceas claimed in claim 13 further comprising the step of using the trafficdata to obtain service quality data to form a QoS report in accordancewith the functionality of an installed detector module during monitoringof a service.
 15. The method of monitoring quality of service as claimedin claim 14 further comprising the step of creating and maintaining ashared data structure for storing service quality data in a storagemodule.
 16. The method of monitoring quality of service as claimed inclaim 14 further comprising the step of sending the QoS report to a QoSmonitoring apparatus.
 17. The method of monitoring quality of service asclaimed in claim 12 further comprising the step of requesting via a userinterface 18 permission to install a received module, and only carryingout the installation if a positive response is received and/or the stepof requesting via the user interface permission to send the QoS reportto a QoS monitoring apparatus.
 18. The method of monitoring quality ofservice as claimed in claim 17 further comprising generating aninstallation request using the information received with the module. 19.A quality of service, QoS, monitoring apparatus comprising: a storearranged for storing one or more listener modules for obtaining servicequality data from traffic data relating to a monitored service passingthrough a network element; a store arranged for storing one or moredetector modules, the detector modules using service quality dataobtained by a listener module to form QoS reports; and a QoS monitoringserver adapted to send a listener module and/or a detector module to atleast one remote QoS monitoring device for installation in a baseplatform of the at least one remote QoS monitoring device, to extend thefunctionality of the base platform so as to perform the functionality ofthe installed modules.
 20. The QoS monitoring apparatus as claimed inclaim 19, also comprising a store arranged to store quality of servicereports containing QoS information received from the at least one remoteQoS monitoring device; wherein the QoS monitoring server is arranged toreceive QoS reports from the at least one remote QoS monitoring deviceand to store them in the store.
 21. The QoS monitoring apparatus asclaimed in claim 18, in which the QoS monitoring apparatus is adapted toselect a listener module or a detector module to send to the at leastone remote QoS monitoring device associated with a network elementdepending on one or more of: the type of user equipment that isconsuming the service; the type of networking technology used; the typeof operating system; and/or the type of service.
 22. A method of qualityof service, QoS, monitoring in a QoS monitoring apparatus, the methodcomprising the steps of: selecting from a store one or more of alistener module for obtaining relevant traffic data passing through anetwork element and/or selecting from a store one or more of a detectormodule to identify service quality problems using the data obtained by alistener module (20); and sending the selected listener module and/orthe detector module to at least one remote QoS monitoring device forinstallation in a base platform of the at least one remote QoSmonitoring device, to extend the functionality of the base platform soas to perform the functionality of the installed modules.
 23. The methodof quality of service monitoring as claimed in claim 22, also comprisingreceiving quality of service reports containing QoS information from theat least one remote QoS monitoring device to store them in a store. 24.The method of quality of service monitoring as claimed in claim 22,further comprising selecting a listener module or a detector module tosend to the at least one remote QoS monitoring device associated with anetwork element depending on one or more of: the type of user equipmentthat is consuming the service; the type of networking technology used;the type of operating system; and/or the type of service.